package org.dromara.demo.designPattern.装饰器模式.service;

import org.dromara.demo.designPattern.装饰器模式.interceptor.HandlerInterceptor;

public class SsoInterceptor implements HandlerInterceptor {


    /**
     * 这里的模拟实现非常简单，只是截取字符串，在实际使用时，需要从
     * HttpServletRequest request对象中获取cookie信息，解析ticket值并
     * 校验。在返回的里面也非常简单，只要获取到了 success，就认为是允
     * 许登录。实际的业务代码会更加复杂，这里只是简单模拟了整个过程，
     * 方便学习
     * @param request
     * @param response
     * @param handler
     * @return
     */
    @Override
    public boolean preHandle(String request, String response, Object handler) {
        // 模拟获取cookie
        String ticket = request.substring(1, 8);
         // 模拟校验
        return ticket.equals("success");
    }
}
